package com.nuc.zyt.day04.demo.cookfoodie;

import sun.security.krb5.internal.crypto.Des;

/**
 * @ClassName Cook
 * @Description TODO
 * @Author 耀酱
 * @Date 2023/5/30 7:44
 * @Version 1.0
 */

public class Cook extends Thread{

    @Override
    public void run() {
        while (true){
            synchronized (Desk.lock){
                // 生产者进程
                if(Desk.count <=0){
                // 消费者不再消费，生产者退出
                    break;
                }else {
                    // 判断是否有资源
                    if(Desk.flag == 1){
                        // 有资源 等待
                        try {
                            Desk.lock.wait();
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }else {
                        // 没有资源 可以生产
                        System.out.println("生产者正在生产资源");
                        Desk.flag = 1;
                        Desk.lock.notifyAll(); // 唤醒所有线程
                    }

                }

            }
        }
    }
}
